/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package gui;
import basicas.Artista;
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpServletRequest;
import negocio.Fachada;

/**
 *
 * @author Jefferson
 */
@ManagedBean  // @ManagedBean(name=�msg�)
public class ArtistaBean {
    
    private Artista artista;
    private List<Artista> listArtista;
    private String retornoHtml = "";
    private int codigoBusca;
        
    public ArtistaBean() {
        HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();        
        String codigoArtista = request.getParameter("cartista");        
        
        if(codigoArtista != null){  
            int codigo = Integer.parseInt(codigoArtista);            
            artista = Fachada.getInstancia().getArtistaByCodigo(codigo);
        }else{
            artista = new Artista();
        }                  
    }
    
    public void inserir(){
        Fachada fachada = Fachada.getInstancia();
        
        if(artista.getNome().equals("")){
                FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN,"Atenção", "Preencha o nome!"));  
        }else{

            try {
                    fachada.inserirArtista(artista);   
                    FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,"Sucesso", "Operação realizada!"));  
                    //retornoHtml = FuncoesStaticBean.mostraSucesso();
                    artista = null;
            } catch (Exception e) {
                FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"Erro", "Erro na operação")); 
                //retornoHtml = FuncoesStaticBean.mostraErro();
            }
        }
    }
    
     public void alterar() {
        try {
            Fachada.getInstancia().alterarArtista(artista);
            retornoHtml = FuncoesStaticBean.mostraSucesso();
        } catch (Exception e) {
            retornoHtml = FuncoesStaticBean.mostraErro();
        }
    }
    
    public void remover(Artista funcao){	        
        try {            
            Fachada.getInstancia().removerArtista(funcao);
            retornoHtml = FuncoesStaticBean.mostraSucesso();
        } catch (Exception e) {
            retornoHtml = FuncoesStaticBean.mostraErro();
        }                		
    }

    public String alterarArtista(int cartista){
        return "alterarartista.xhml?faces-redirect=true&cartista=" + cartista;
    }

    public void buscar(){
        artista = Fachada.getInstancia().getArtistaByCodigo(codigoBusca);
    }
    
    public List<Artista> getListaArtistas() {
        Fachada fachada = Fachada.getInstancia();
        listArtista = fachada.listarArtistas();
        return listArtista;
    }

    public Artista getArtista() {
        return artista;
    }

    public void setArtista(Artista artista) {
        this.artista = artista;
    }

    public String getRetornoHtml() {
        return retornoHtml;
    }

    public void setRetornoHtml(String retornoHtml) {
        this.retornoHtml = retornoHtml;
    }

    public int getCodigoBusca() {
        return codigoBusca;
    }

    public void setCodigoBusca(int codigoBusca) {
        this.codigoBusca = codigoBusca;
    }
    
}
